package com.zhuchaooasystem.utils;

import android.app.Activity;
import android.content.Context;
import android.util.DisplayMetrics;


/**
 * @author yinsi
 *         <p/>
 *         屏幕相关工具类
 */
public class ScreenUtils {

    /**
     * 获取当前屏幕的宽度
     *
     * @param activity
     */
    public static int getScreenWidth(Activity activity) {
        try {
            DisplayMetrics mDisplayMetrics = new DisplayMetrics();// 屏幕分辨率容器
            activity.getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);
            return mDisplayMetrics.widthPixels;
        } catch (Exception e) {
        }
        return 0;
    }

    /**
     * 获取当前屏幕的高度
     *
     * @param activity
     */
    public static int getScreenHeight(Activity activity) {
        try {
            DisplayMetrics mDisplayMetrics = new DisplayMetrics();// 屏幕分辨率容器
            activity.getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);
            return mDisplayMetrics.heightPixels;
        } catch (Exception e) {
        }
        return 0;
    }

    /**
     * 将px值转换为dip或dp值，保证尺寸大小不变
     *
     * @param pxValue
     * @return
     */
    public static int px2dip(Context context, float pxValue) {
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (pxValue / scale + 0.5f);
    }

    /**
     * 将dip或dp值转换为px值，保证尺寸大小不变
     *
     * @param dipValue
     * @return
     */
    public static int dip2px(Context context, float dipValue) {
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (dipValue * scale + 0.5f);
    }

}
